home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1998 / MacHack 1998.toast / The Hacks! / PCA Icon Arranger ƒ / Main.p < prev    next >
Encoding:
Text File  |  1998-06-20  |  1.6 KB  |  81 lines  |  [TEXT/PJMM]

  1. program PCoord;
  2.  
  3.     uses
  4. {$IFC not undefined THINK_PASCAL}
  5.         InterfacesUI, 
  6. {$ELSEC}
  7.         Types, Quickdraw, Memory, Dialogs, Events, Controls, GestaltEqu, Menus,{}
  8.         Windows, OSUtils, ToolUtils, QuickDrawText, TextUtils, {}
  9. {$ENDC}
  10.         TransSkel, Assertions, PCoordAE;
  11.  
  12.     const
  13. {MENU resources}
  14. { Menus }
  15.         mFile = 501;
  16.         iQuit = 1;
  17.  
  18.         kAboutRes = 621;        {About ALRT and STR# resource id}
  19.         iAboutProgram = 1;
  20.  
  21.     var
  22.         gFileMenu: MenuHandle;
  23.         gColorFlag, gHas68kFPU: Boolean;
  24.         someStr: Str255;
  25.  
  26.     procedure DoFileMenu (item: integer);
  27.     begin
  28.         case item of
  29.             iQuit: 
  30.                 SkelWhoa;
  31.  
  32.             otherwise
  33.                 SkelWhoa;
  34.         end{case}
  35.     end; { DoFileMenu }
  36.  
  37.     procedure DoAbout;
  38.     begin
  39.         if 1 = Alert(kAboutRes, nil) then
  40.             ;
  41.     end;
  42.  
  43.     procedure InitFlags;
  44.         var
  45.             feature: LongInt;
  46.     begin
  47.         gColorFlag := false;
  48.         if noErr = Gestalt(gestaltQuickdrawVersion, feature) then
  49.             gColorFlag := feature > 0; {0 = non-color QD}
  50.         gHas68kFPU := false;
  51.         if noErr = Gestalt(gestaltFPUType, feature) then
  52.             gHas68kFPU := feature > gestaltNoFPU; { We'll take any 68kFPU }
  53.  
  54.  
  55. { Menus }
  56.         gFileMenu := nil;
  57.  
  58.     end; {InitFlags}
  59.  
  60. begin
  61. { Initialisations }
  62.     SkelInit(6, nil);
  63.  
  64.     InitFlags;
  65.  
  66. { Menus }
  67.     GetIndString(someStr, kAboutRes, iAboutProgram);
  68.     SkelApple(someStr, @DoAbout); { Two placeholders }
  69.     gFileMenu := GetMenu(mFile);
  70.     if SkelMenu(gFileMenu, @DoFileMenu, nil, true) then
  71.         ;                                        {Tell TransSkel to handle the menu}
  72.  
  73.     SkelSetSleep(2);
  74.     SkelReqdAEInit(nil, nil, nil, nil); { Default behavior }
  75.  
  76.     InstallPCoordHandlers; { Install those handlers for my events }
  77.  
  78.     SkelMain;                                                { loop til quit selected                }
  79.     SkelClobber;                                            { clean up                                }
  80.  
  81. end.